home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / swagd_f.zip / DRIVES.SWG / 0049_DISK SERIAL.pas < prev    next >
Pascal/Delphi Source File  |  1993-10-28  |  1KB  |  50 lines

  1. {===========================================================================
  2. Date: 08-22-93 (01:50)             Number: 35568
  3. From: JON JASIUNAS                 Refer#: NONE
  4. Subj: SERIAL # OF DISK               Conf: (1221) F-PASCAL
  5. --------------------------------------------------------------------------- }
  6.  
  7.   Uses DOS, CRT;
  8.   Type MIDRecord = Record
  9.      InfoLevel : Word;
  10.      SerialNum : LongInt;   {This is the serial number...}
  11.      VolLabel  : Array[1..11] of Char;
  12.      FatType   : Array[1..8] of Char;
  13.      End;
  14. Function Label_Fat(Var Mid : MidRecord; Drive : Word) : Boolean;
  15. Var Result : Word;
  16. Var Regs   : Registers;
  17. Begin
  18.      FillChar(Mid,SizeOf(Mid),0);
  19.      FillChar(Regs,SizeOf(Regs),0);
  20.      With Regs DO
  21.      Begin
  22.           AX := $440D;
  23.           BX := Drive;
  24.           CX := $0866;
  25.           DS := Seg(Mid);
  26.           DX := Ofs(Mid);
  27.           Intr($21,Regs);
  28.           Case AX of
  29.                $01 : Label_Fat := False;
  30.                $02 : Label_Fat := False;
  31.                $05 : Label_Fat := False;
  32.                Else Label_Fat := True;
  33.           End;
  34.      End;
  35. End;
  36.  
  37. Var Mid : MidRecord;
  38. Begin
  39.      ClrScr;
  40.      If Label_Fat(Mid,0) Then
  41.      With Mid DO
  42.      Begin
  43.           Writeln(SerialNum);
  44.           Writeln(VolLabel);
  45.           Writeln(FatType);
  46.      End
  47.      Else Writeln('Error Occured');
  48. End.
  49.  
  50.